I. Field of the Invention
The present invention relates to data communications and, more particularly, to a gateway which provides transparent interconnection of two or more networks running different protocols.
II. Background and Prior Art
As communications network have evolved, independent suppliers of computer hardware and software developed different, non-compatible formats and protocols for transporting data through the communications networks. Examples of well-known communications protocols include System Network Architecture (SNA), Digital Network Architecture (DECNet), Transmission Control Protocol/Internet Protocol (TCP/IP), NetBIOS and OSI.
As networks have grown, and particularly as local area networks (LANs) have come into widespread use, many organizations have ended up with one or more physical networks that are confederations of one or more logical networks, each logical network running a different networking protocol. (A logical network runs a single networking protocol and is referred to a single protocol transport network, or SPTN. ) For example, a single organization may have dozens of SPTNs running as many as four or five different networking protocols. (Such a physical network having more than one logical networks, or SPTNs, is termed heterogeneous network.) This heterogeneity complicates communications as distributed programs are generally written for a particular application programming interface (API) which assumes a specific networking protocol, and can, therefore, only run on limited parts of the overall physical network.
In a node, if a mismatch exists between the transport protocols (the most basic end-to-end networking protocols for opening and closing connections, sending and receiving data on connections, and sending and receiving datagrams) assumed by the particular API for a company's application program and the transport protocols actually implemented in one or more of the SPTNs on which the company would like to transport the application data, compensation between the API and the transport provider may be required. This is described in greater detail in closely related U.S. Pat. No. 5,224,098.
In addition, there are addressing problems associated with the heterogeneous networks. A program today identifies itself and finds its partners using addresses associated with a particular networking protocol. (A networking protocol uses addresses to locate programs in the SPTN via existing protocol-specific means, such as local directory searches or directory broadcasts, and to route to those programs.) In order for the program to operate over multiple, different networking protocols, such as in a heterogeneous network, a mechanism is needed to bridge the gap between the specific address set used by the program and the address sets used by the networking protocols. In particular, program independence from specific network protocols requires a transport-independent mechanism for finding the source and destination application programs and the corresponding available transport protocols. In addition, a mechanism for selecting the best transport protocol to utilize, when multiple networking protocols are available, is required. This is described in greater detail in closely related patent application Ser. No. 07/915,969.
Where there are a number of SPTNs running different protocols, a gateway provides transparent interconnection of the SPTNs so that a single multiprotocol transport network, or MPTN, is formed. This MPTN appears to the end user applications, as if a single protocol was used throughout the heterogeneous network. Gateways, among other things, provide routing functions in order to enable resources to be located and to relay data between the SPTNs to achieve end-to-end connectivity.
Present gateways, however, have many limitations making the interconnection of networks running different protocols non-transparent, if the interconnection is even possible. For instance, present gateways are transport layer protocol-specific. An example of a transport layer protocol-specific gateway is one which is able to interconnect a network running one flavor of OSI with another network running another flavor of OSI. This gateway is not able to interconnect other types of networks, for example a network running TCP/IP and a network running SNA. More detail is given on an OSI gateway in an article entitled "An Approach to CO/CL Internetworking", CO/CL Internetworking Workshop, Jul. 24-26, 1990.
Another problem with present gateways is that a maximum of two networks may be interconnected, i.e., one gateway being used between the two interconnected networks. No additional networks may be added so that one continuous heterogeneous network may be formed.
Further, with current gateway solutions, all nodes in an SPTN must be upgraded to include additional functions and protocols in order to operate with the gateway. This is not feasible in many environments due to the large number of nodes and cost.
There is a need for a transport layer gateway that has a general architecture so that is has no dependencies on the transport protocols being supported by the interconnected networks. Also, there is a requirement for such a gateway to support connectivity across multiple SPTNs. This gateway should also support existing nodes running existing protocols that cannot be upgraded to include new functions.